package com.service;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.dao.JiedairenDao;
import com.dao.ZixunDao;
import com.pojo.Jiedairen;
import com.pojo.Zixun;
import com.util.MD5Util;
import com.util.PasswordUtil;
import com.util.StringUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.test.web.reactive.server.JsonPathAssertions;

import java.util.List;

@Service
public class JiedairenService extends ServiceImpl<JiedairenDao, Jiedairen> {
    @Autowired
    JiedairenDao jiedairenDao;

    public IPage getKefuPage(int page,int limit,String kefuName,int status){
        Page p=new Page(page,limit);
        QueryWrapper<Jiedairen> qw=new QueryWrapper<>();
        if (StringUtil.isNotNull(kefuName)){
            qw.like("jdname",kefuName);
        }
        if(status==0){
            qw.eq("status",status);
        }else if(status==1){
            qw.eq("status",status);
        }

        IPage iPage=jiedairenDao.selectPage(p,qw);
        return iPage;
    }

    /**
     * 修改客服名或密码
     * @param id 客服id
     * @param columName 修改的字段
     * @param value 修改的值
     * @return
     */
    public String edit(String id,String columName,String value){
        Jiedairen kefu=jiedairenDao.selectById(id);
        if (kefu==null){
            return "客服不存在";
        }
        if(StringUtil.isNotNull(columName) && columName.equals("jdpassword")){
            kefu.setJdpassword(MD5Util.getMD5(value));
        }
        if (jiedairenDao.updateById(kefu)>0){
            return null;
        }else{
            return "修改失败";
        }
    }
    /**
     * 修改密码
     * @param oldPwd
     * @param newPwd
     * @return
     */
    public String wyUpdatePassword(String oldPwd , String newPwd , String id){
        Jiedairen jiedairen = jiedairenDao.selectById(id) ;
        if(!MD5Util.getMD5(oldPwd).equals(jiedairen.getJdpassword())) {
            return "原始密码错误" ;
        }
        jiedairen.setJdpassword(MD5Util.getMD5(newPwd));
        jiedairenDao.updateById(jiedairen) ;
        return null ;
    }
}
